ГЛАВА 1

Общие сведения о стандартных интерфейсах

Существует три принципиально различающихся способа обмена данными с внешними устройствами.

Первый способ это программно-управляемый обмен (или режим обмена по готовности).

Программно-управляемый обмен данными это передача данных по инициативе и под управлением программы, осуществляющей ввод/вывод. Этот режим характеризуется пассивной ролью внешнего устройства (ВУ) в процессе обмена информацией. Момент передачи данных определяется выполняемой программой. Передача данных происходит лишь в те моменты времени, когда встречается команда пересылки данных. Однако перед этим программа, осуществляющая ввод/вывод, должна проверить готовность ВУ к приему или передаче данных (обычно путем проверки бита готовности регистра состояния).

Второй способ носит название обмена в режиме прерываний.

В этом случае активная роль в инициировании процесса обмена отводится ВУ. Как только ВУ оказывается готово к передаче очередной порции данных, оно посылает процессору сигнал "Запрос на прерывание", что приводит к прерыванию выполняемой программы и передаче управления подпрограмме, обслуживающей ВУ. После передачи данных управление передается в прерванную программу. Такой режим позволяет, во-первых, обслуживать одновременно несколько ВУ, а во-вторых, работать с устройствами, запускающимися в неопределенные моменты времени. Отметим, что, хотя инициирование процесса обмена принадлежит ВУ, сам обмен осуществляется под управлением подпрограммы обработки прерываний, выполняемой процессором.

Обмен данными по инициативе внешнего устройства также может выполняться и в режиме прямого доступа к памяти (режим ПДП).

Обмен в режиме ПДП является самым быстрым способом передачи данных между памятью и внешним устройством. Он не загружает процессор и поэтому может выполняться в промежутках между циклами обращения процессора к шине. При этом адресация и управление размерами передаваемого массива данных осуществляется контроллером ПДП или самим устройством, получившим прямой доступ к памяти.

Управление внешними устройствами, а также обмен информацией осуществляется через регистры контроллера внешнего устройства. Количество таких регистров может быть различным и зависит от сложности конкретного устройства.

В качестве примера можно рассмотреть стандартный контроллер параллельного принтера IBM-совместимого персонального компьютера, работающий в режиме однонаправленного вывода по протоколу Centronics. Как достаточно простое устройство, он содержит всего три программно-доступных регистра регистр данных (РД), регистр состояния (РС) и регистр управления (команд) (РУ).

Присоединение внешних устройств к компьютеру типа IBM возможно:

1) через стандартные параллельный или последовательный (серийный) интерфейсы (порты),

2) через адаптер, непосредственно подсоединенный к системной шине ЭМВ через разъем (слот) на материнской плате.